package org.polaris.basic.service;

import org.polaris.basic.query.BaseQuery;
import org.polaris.basic.tool.PageResult;

import java.io.Serializable;
import java.util.List;

public interface IBaseService<T> {
    //通过id查询
    T selectById(Serializable id);
    //通过名字查询
    T selectByName(String name);
    //查询所有
    List<T> selectAll();
    //通过id删除
    void deleteById(Serializable id);
    //添加
    void add(T t);
    //修改
    void update(T t);
    //查询分页总条数
    Long selectTotal(BaseQuery baseQuery);
    //查询分页数据
    PageResult paging(BaseQuery baseQuery);
    //批量删除
    void batchDelete(List<Long> ids);

}
